<?php

/*
*
*   Excalibur Content Management System
*   Copyright © 2008 Egor "Sontan" Kuryanovich
*
*   Based on Explay Engine v2.0 by Golovdinov Alexander
*
*   Official site: www.excms.ru
*   Contact e-mail: support@excms.ru
*
*   GNU General Public License original source:
*   http://www.gnu.org/licenses/gpl-3.0.html
*
*/



if ($EXCMS != 'work') exit;

error_reporting (E_ALL);
ini_set ('display_errors', 1);
set_error_handler('myErrorHandler');

include $_SERVER['DOCUMENT_ROOT'].'/engine/settings.php';
include $_SERVER['DOCUMENT_ROOT'].'/engine/mysql.class.php';

$db = new DB ($server, $dbusername, $dbpassword, $dbname);

// Подключение к БД
$db->connect();

$ip = $_SERVER['REMOTE_ADDR'];

// SESSIONS
session_start ();
if (!isset($_SESSION['unical_sesid'])) 
{
	$alf = '0123456789qwertyuioasdfghjklzxcvbnm';
	$generator = '';
	for ($i=0; $i<10; $i++) 
	{
		$number = mt_rand(0, strlen($alf)-1);
		$generator .= $alf[$number];
	}
	$_SESSION['unical_sesid'] = md5($generator);
}

// Проверка переданных пользователем данных $_POST и $_GET
if (preg_match('/\bselect\b/i', $_SERVER['QUERY_STRING']) || 
	preg_match('/\bdrop\b/i', $_SERVER['QUERY_STRING']) || 
	preg_match('/\balter\b/i', $_SERVER['QUERY_STRING']) || 
	preg_match('/\bdatabase\b/i', $_SERVER['QUERY_STRING'])) 
{
	die ('Hacker attack? ho-ho-ho...');
}

// Проверка пользователя на "вшивость" по ip
if (!isset($_SESSION['resolved_ip'])) 
{
	$blacklist = $db->query ("SELECT * FROM ".DB_PEREFIX."_blacklist WHERE ip = '$ip'");
	if ($db->num_rows($blacklist) > 0) 
	{
		print '<center><b>Ваш ip находится в списке запрещенных!<br>Вы не можете находиться на этом сайте!</b>';
		exit;
	}
	$_SESSION['resolved_ip'] = 1;
}

// Главные настройки сайта
if (!$mainsettings = $db->query ("SELECT * FROM site_main")) 
{ 
	print '<center><b>Невозможно взять данные из БД!<br>Обратитесь к администратору сайта!</b>'; 
	exit; 
}
$SITE = $db->fetch_array ($mainsettings);

// $GLOBAL_USER = false;
// Создание пользователя на основе Cookies
if (isset($_COOKIE['login']) && 
	isset ($_COOKIE['pass']) && 
	$_COOKIE['login'] != 'false' && 
	$_COOKIE['pass'] != 'false') 
{
	$GLOBAL_USER_LOGIN = addslashes($_COOKIE['login']);
	$GLOBAL_USER_PASS = addslashes($_COOKIE['pass']);
	if ($GLOBAL_USER_LOGIN != '' && $GLOBAL_USER_PASS != '')
		$SELECT_USER = $db->query ("SELECT * FROM ".DB_PEREFIX."_users WHERE user_login = '$GLOBAL_USER_LOGIN' && user_password = '$GLOBAL_USER_PASS'");
	
	if ($db->num_rows ($SELECT_USER) == 1) 
	{
		$GLOBAL_USER = $db->fetch_array ($SELECT_USER);
	}
}

// убиение запрещенного пользователя
if ($GLOBAL_USER['user_ban'] == 'on') 
{
	/*$days = $GLOBAL_USER['user_ban_day'] * 24 * 60 * 60;
	$after_time = time() - $GLOBAL_USER['user_ban_date'];
	if ($after_time > $days)
	{
		@mysql_query ("UPDATE ".DB_PEREFIX."_users SET user_ban = 'off',
			user_ban_date = '',
			user_ban_desc = '',
			user_ban_day = '' WHERE user_id = '".$GLOBAL_USER['user_id']."'");
	}
	print "<html><head><title>Доступ запрещен</title></head><body>";
	print "<center><font color=red><h1>Доступ запрещен на ".$GLOBAL_USER['user_ban_day']."!</h1>".$GLOBAL_USER['user_ban_desc']."</font></body></html>";*/
	print '<center><font color=red><h1>Доступ запрещен!</h1>';
	exit;
}

